/*1.5.4*/
(function(){
    var f=0,l=[],n={},j={},a={
        "<":"lt",
        ">":"gt",
        "&":"amp",
        '"':"quot",
        "'":"#39"
    },m=/[<>&\"\']/g,b,c=window.setTimeout,d={},e;
    function h(){
        this.returnValue=false
        }
        function k(){
        this.cancelBubble=true
        }(function(o){
        var p=o.split(/,/),q,s,r;
        for(q=0;q<p.length;q+=2){
            r=p[q+1].split(/ /);
            for(s=0;s<r.length;s++){
                j[r[s]]=p[q]
                }
            }
        })("application/msword,doc dot,application/pdf,pdf,application/pgp-signature,pgp,application/postscript,ps ai eps,application/rtf,rtf,application/vnd.ms-excel,xls xlb,application/vnd.ms-powerpoint,ppt pps pot,application/zip,zip,application/x-shockwave-flash,swf swfl,application/vnd.openxmlformats-officedocument.wordprocessingml.document,docx,application/vnd.openxmlformats-officedocument.wordprocessingml.template,dotx,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,xlsx,application/vnd.openxmlformats-officedocument.presentationml.presentation,pptx,application/vnd.openxmlformats-officedocument.presentationml.template,potx,application/vnd.openxmlformats-officedocument.presentationml.slideshow,ppsx,application/x-javascript,js,application/json,json,audio/mpeg,mpga mpega mp2 mp3,audio/x-wav,wav,audio/mp4,m4a,image/bmp,bmp,image/gif,gif,image/jpeg,jpeg jpg jpe,image/photoshop,psd,image/png,png,image/svg+xml,svg svgz,image/tiff,tiff tif,text/plain,asc txt text diff log,text/html,htm html xhtml,text/css,css,text/csv,csv,text/rtf,rtf,video/mpeg,mpeg mpg mpe,video/quicktime,qt mov,video/mp4,mp4,video/x-m4v,m4v,video/x-flv,flv,video/x-ms-wmv,wmv,video/avi,avi,video/webm,webm,video/vnd.rn-realvideo,rv,application/vnd.oasis.opendocument.formula-template,otf,application/octet-stream,exe");
    var g={
    VERSION:"1.5.4",
    STOPPED:1,
    STARTED:2,
    QUEUED:1,
    UPLOADING:2,
    FAILED:4,
    DONE:5,
    GENERIC_ERROR:-100,
    HTTP_ERROR:-200,
    IO_ERROR:-300,
    SECURITY_ERROR:-400,
    INIT_ERROR:-500,
    FILE_SIZE_ERROR:-600,
    FILE_EXTENSION_ERROR:-601,
    IMAGE_FORMAT_ERROR:-700,
    IMAGE_MEMORY_ERROR:-701,
    IMAGE_DIMENSIONS_ERROR:-702,
    mimeTypes:j,
    ua:(function(){
        var s=navigator,r=s.userAgent,t=s.vendor,p,o,q;
        p=/WebKit/.test(r);
        q=p&&t.indexOf("Apple")!==-1;
        o=window.opera&&window.opera.buildNumber;
        return{
            windows:navigator.platform.indexOf("Win")!==-1,
            ie:!p&&!o&&(/MSIE/gi).test(r)&&(/Explorer/gi).test(s.appName),
            webkit:p,
            gecko:!p&&/Gecko/.test(r),
            safari:q,
            opera:!!o
            }
        }()),
typeOf:function(p){
    return({}).toString.call(p).match(/\s([a-z|A-Z]+)/)[1].toLowerCase()
    },
extend:function(o){
    g.each(arguments,function(p,q){
        if(q>0){
            g.each(p,function(s,r){
                o[r]=s
                })
            }
        });
return o
},
cleanName:function(o){
    var p,q;
    q=[/[\300-\306]/g,"A",/[\340-\346]/g,"a",/\307/g,"C",/\347/g,"c",/[\310-\313]/g,"E",/[\350-\353]/g,"e",/[\314-\317]/g,"I",/[\354-\357]/g,"i",/\321/g,"N",/\361/g,"n",/[\322-\330]/g,"O",/[\362-\370]/g,"o",/[\331-\334]/g,"U",/[\371-\374]/g,"u"];
    for(p=0;p<q.length;p+=2){
        o=o.replace(q[p],q[p+1])
        }
        o=o.replace(/\s+/g,"_");
    o=o.replace(/[^a-z0-9_\-\.]+/gi,"");
    return o
    },
addRuntime:function(o,p){
    p.name=o;
    l[o]=p;
    l.push(p);
    return p
    },
guid:function(){
    var o=new Date().getTime().toString(32),p;
    for(p=0;p<5;p++){
        o+=Math.floor(Math.random()*65535).toString(32)
        }
        return(g.guidPrefix||"p")+o+(f++).toString(32)
    },
buildUrl:function(p,o){
    var q="";
    g.each(o,function(s,r){
        q+=(q?"&":"")+encodeURIComponent(r)+"="+encodeURIComponent(s)
        });
    if(q){
        p+=(p.indexOf("?")>0?"&":"?")+q
        }
        return p
    },
each:function(r,s){
    var q,p,o;
    if(r){
        q=r.length;
        if(q===b){
            for(p in r){
                if(r.hasOwnProperty(p)){
                    if(s(r[p],p)===false){
                        return
                    }
                }
            }
            }else{
    for(o=0;o<q;o++){
        if(s(r[o],o)===false){
            return
        }
    }
    }
}
},
formatSize:function(o){
    if(o===b||/\D/.test(o)){
        return g.translate("N/A")
        }
        if(o>1073741824){
        return Math.round(o/1073741824,1)+" GB"
        }
        if(o>1048576){
        return Math.round(o/1048576,1)+" MB"
        }
        if(o>1024){
        return Math.round(o/1024,1)+" KB"
        }
        return o+" b"
    },
getPos:function(p,t){
    var u=0,s=0,w,v=document,q,r;
    p=p;
    t=t||v.body;
    function o(C){
        var A,B,z=0,D=0;
        if(C){
            B=C.getBoundingClientRect();
            A=v.compatMode==="CSS1Compat"?v.documentElement:v.body;
            z=B.left+A.scrollLeft;
            D=B.top+A.scrollTop
            }
            return{
            x:z,
            y:D
        }
    }
    if(p&&p.getBoundingClientRect&&((navigator.userAgent.indexOf("MSIE")>0)&&(v.documentMode<8))){
    q=o(p);
    r=o(t);
    return{
        x:q.x-r.x,
        y:q.y-r.y
        }
    }
w=p;
while(w&&w!=t&&w.nodeType){
    u+=w.offsetLeft||0;
    s+=w.offsetTop||0;
    w=w.offsetParent
    }
    w=p.parentNode;
while(w&&w!=t&&w.nodeType){
    u-=w.scrollLeft||0;
    s-=w.scrollTop||0;
    w=w.parentNode
    }
    return{
    x:u,
    y:s
}
},
getSize:function(o){
    return{
        w:o.offsetWidth||o.clientWidth,
        h:o.offsetHeight||o.clientHeight
        }
    },
parseSize:function(o){
    var p;
    if(typeof(o)=="string"){
        o=/^([0-9]+)([mgk]?)$/.exec(o.toLowerCase().replace(/[^0-9mkg]/g,""));
        p=o[2];
        o=+o[1];
        if(p=="g"){
            o*=1073741824
            }
            if(p=="m"){
            o*=1048576
            }
            if(p=="k"){
            o*=1024
            }
        }
    return o
},
xmlEncode:function(o){
    return o?(""+o).replace(m,function(p){
        return a[p]?"&"+a[p]+";":p
        }):o
    },
toArray:function(q){
    var p,o=[];
    for(p=0;p<q.length;p++){
        o[p]=q[p]
        }
        return o
    },
inArray:function(q,r){
    if(r){
        if(Array.prototype.indexOf){
            return Array.prototype.indexOf.call(r,q)
            }
            for(var o=0,p=r.length;o<p;o++){
            if(r[o]===q){
                return o
                }
            }
        }
    return -1
},
addI18n:function(o){
    return g.extend(n,o)
    },
translate:function(o){
    return n[o]||o
    },
isEmptyObj:function(o){
    if(o===b){
        return true
        }
        for(var p in o){
        return false
        }
        return true
    },
hasClass:function(q,p){
    var o;
    if(q.className==""){
        return false
        }
        o=new RegExp("(^|\\s+)"+p+"(\\s+|$)");
    return o.test(q.className)
    },
addClass:function(p,o){
    if(!g.hasClass(p,o)){
        p.className=p.className==""?o:p.className.replace(/\s+$/,"")+" "+o
        }
    },
removeClass:function(q,p){
    var o=new RegExp("(^|\\s+)"+p+"(\\s+|$)");
    q.className=q.className.replace(o,function(s,r,t){
        return r===" "&&t===" "?" ":""
        })
    },
getStyle:function(p,o){
    if(p.currentStyle){
        return p.currentStyle[o]
        }else{
        if(window.getComputedStyle){
            return window.getComputedStyle(p,null)[o]
            }
        }
},
addEvent:function(t,o,u){
    var s,r,q,p;
    p=arguments[3];
    o=o.toLowerCase();
    if(e===b){
        e="Plupload_"+g.guid()
        }
        if(t.addEventListener){
        s=u;
        t.addEventListener(o,s,false)
        }else{
        if(t.attachEvent){
            s=function(){
                var v=window.event;
                if(!v.target){
                    v.target=v.srcElement
                    }
                    v.preventDefault=h;
                v.stopPropagation=k;
                u(v)
                };
                
            t.attachEvent("on"+o,s)
            }
        }
    if(t[e]===b){
    t[e]=g.guid()
    }
    if(!d.hasOwnProperty(t[e])){
    d[t[e]]={}
}
r=d[t[e]];
if(!r.hasOwnProperty(o)){
    r[o]=[]
    }
    r[o].push({
    func:s,
    orig:u,
    key:p
})
},
removeEvent:function(t,o){
    var r,u,q;
    if(typeof(arguments[2])=="function"){
        u=arguments[2]
        }else{
        q=arguments[2]
        }
        o=o.toLowerCase();
    if(t[e]&&d[t[e]]&&d[t[e]][o]){
        r=d[t[e]][o]
        }else{
        return
    }
    for(var p=r.length-1;p>=0;p--){
        if(r[p].key===q||r[p].orig===u){
            if(t.removeEventListener){
                t.removeEventListener(o,r[p].func,false)
                }else{
                if(t.detachEvent){
                    t.detachEvent("on"+o,r[p].func)
                    }
                }
            r[p].orig=null;
        r[p].func=null;
        r.splice(p,1);
        if(u!==b){
            break
        }
    }
    }
if(!r.length){
    delete d[t[e]][o]
}
if(g.isEmptyObj(d[t[e]])){
    delete d[t[e]];
    try{
        delete t[e]
    }catch(s){
        t[e]=b
        }
    }
},
removeAllEvents:function(p){
    var o=arguments[1];
    if(p[e]===b||!p[e]){
        return
    }
    g.each(d[p[e]],function(r,q){
        g.removeEvent(p,q,o)
        })
    }
};

g.Uploader=function(s){
    var p={},v,u=[],r,q=false;
    v=new g.QueueProgress();
    s=g.extend({
        chunk_size:0,
        multipart:true,
        multi_selection:true,
        file_data_name:"file",
        filters:[]
    },s);
    function t(){
        var x,y=0,w;
        if(this.state==g.STARTED){
            for(w=0;w<u.length;w++){
                if(!x&&u[w].status==g.QUEUED){
                    x=u[w];
                    x.status=g.UPLOADING;
                    if(this.trigger("BeforeUpload",x)){
                        this.trigger("UploadFile",x)
                        }
                    }else{
                y++
            }
            }
            if(y==u.length){
        this.stop();
        this.trigger("UploadComplete",u)
        }
    }
}
function o(){
    var x,w;
    v.reset();
    for(x=0;x<u.length;x++){
        w=u[x];
        if(w.size!==b){
            v.size+=w.size;
            v.loaded+=w.loaded
            }else{
            v.size=b
            }
            if(w.status==g.DONE){
            v.uploaded++
        }else{
            if(w.status==g.FAILED){
                v.failed++
            }else{
                v.queued++
            }
        }
    }
    if(v.size===b){
    v.percent=u.length>0?Math.ceil(v.uploaded/u.length*100):0
    }else{
    v.bytesPerSec=Math.ceil(v.loaded/((+new Date()-r||1)/1000));
    v.percent=v.size>0?Math.ceil(v.loaded/v.size*100):0
    }
}
g.extend(this,{
    state:g.STOPPED,
    runtime:"",
    features:{},
    files:u,
    settings:s,
    total:v,
    id:g.guid(),
    init:function(){
        var B=this,C,y,x,A=0,z;
        if(typeof(s.preinit)=="function"){
            s.preinit(B)
            }else{
            g.each(s.preinit,function(E,D){
                B.bind(D,E)
                })
            }
            s.page_url=s.page_url||document.location.pathname.replace(/\/[^\/]+$/g,"/");
        if(!/^(\w+:\/\/|\/)/.test(s.url)){
            s.url=s.page_url+s.url
            }
            s.chunk_size=g.parseSize(s.chunk_size);
        s.max_file_size=g.parseSize(s.max_file_size);
        B.bind("FilesAdded",function(D,G){
            var F,E,I=0,J,H=s.filters;
            if(H&&H.length){
                J=[];
                g.each(H,function(K){
                    g.each(K.extensions.split(/,/),function(L){
                        if(/^\s*\*\s*$/.test(L)){
                            J.push("\\.*")
                            }else{
                            J.push("\\."+L.replace(new RegExp("["+("/^$.*+?|()[]{}\\".replace(/./g,"\\$&"))+"]","g"),"\\$&"))
                            }
                        })
                });
            J=new RegExp(J.join("|")+"$","i")
            }
            for(F=0;F<G.length;F++){
            E=G[F];
            E.loaded=0;
            E.percent=0;
            E.status=g.QUEUED;
            if(J&&!J.test(E.name)){
                D.trigger("Error",{
                    code:g.FILE_EXTENSION_ERROR,
                    message:g.translate("File extension error."),
                    file:E
                });
                continue
            }
            if(E.size!==b&&E.size>s.max_file_size){
                D.trigger("Error",{
                    code:g.FILE_SIZE_ERROR,
                    message:g.translate("File size error."),
                    file:E
                });
                continue
            }
            u.push(E);
            I++
        }
        if(I){
            c(function(){
                B.trigger("QueueChanged");
                B.refresh()
                },1)
            }else{
            return false
            }
        });
if(s.unique_names){
    B.bind("UploadFile",function(D,E){
        var G=E.name.match(/\.([^.]+)$/),F="tmp";
        if(G){
            F=G[1]
            }
            E.target_name=E.id+"."+F
        })
    }
    B.bind("UploadProgress",function(D,E){
    E.percent=E.size>0?Math.ceil(E.loaded/E.size*100):100;
    o()
    });
B.bind("StateChanged",function(D){
    if(D.state==g.STARTED){
        r=(+new Date())
        }else{
        if(D.state==g.STOPPED){
            for(C=D.files.length-1;C>=0;C--){
                if(D.files[C].status==g.UPLOADING){
                    D.files[C].status=g.QUEUED;
                    o()
                    }
                }
            }
    }
});
B.bind("QueueChanged",o);
B.bind("Error",function(D,E){
    if(E.file){
        E.file.status=g.FAILED;
        o();
        if(D.state==g.STARTED){
            c(function(){
                t.call(B)
                },1)
            }
        }
});
B.bind("FileUploaded",function(D,E){
    E.status=g.DONE;
    E.loaded=E.size;
    D.trigger("UploadProgress",E);
    c(function(){
        t.call(B)
        },1)
    });
if(s.runtimes){
    y=[];
    z=s.runtimes.split(/\s?,\s?/);
    for(C=0;C<z.length;C++){
        if(l[z[C]]){
            y.push(l[z[C]])
            }
        }
    }else{
    y=l
    }
    function w(){
    var G=y[A++],F,D,E;
    if(G){
        F=G.getFeatures();
        D=B.settings.required_features;
        if(D){
            D=D.split(",");
            for(E=0;E<D.length;E++){
                if(!F[D[E]]){
                    w();
                    return
                }
            }
            }
        G.init(B,function(H){
    if(H&&H.success){
        B.features=F;
        B.runtime=G.name;
        B.trigger("Init",{
            runtime:G.name
            });
        B.trigger("PostInit");
        B.refresh()
        }else{
        w()
        }
    })
}else{
    B.trigger("Error",{
        code:g.INIT_ERROR,
        message:g.translate("Init error.")
        })
    }
}
w();
if(typeof(s.init)=="function"){
    s.init(B)
    }else{
    g.each(s.init,function(E,D){
        B.bind(D,E)
        })
    }
},
refresh:function(){
    this.trigger("Refresh")
    },
start:function(){
    if(u.length&&this.state!=g.STARTED){
        this.state=g.STARTED;
        this.trigger("StateChanged");
        t.call(this)
        }
    },
stop:function(){
    if(this.state!=g.STOPPED){
        this.state=g.STOPPED;
        this.trigger("CancelUpload");
        this.trigger("StateChanged")
        }
    },
disableBrowse:function(){
    q=arguments[0]!==b?arguments[0]:true;
    this.trigger("DisableBrowse",q)
    },
getFile:function(x){
    var w;
    for(w=u.length-1;w>=0;w--){
        if(u[w].id===x){
            return u[w]
            }
        }
    },
removeFile:function(x){
    var w;
    for(w=u.length-1;w>=0;w--){
        if(u[w].id===x.id){
            return this.splice(w,1)[0]
            }
        }
    },
splice:function(y,w){
    var x;
    x=u.splice(y===b?0:y,w===b?u.length:w);
    this.trigger("FilesRemoved",x);
    this.trigger("QueueChanged");
    return x
    },
trigger:function(x){
    var z=p[x.toLowerCase()],y,w;
    if(z){
        w=Array.prototype.slice.call(arguments);
        w[0]=this;
        for(y=0;y<z.length;y++){
            if(z[y].func.apply(z[y].scope,w)===false){
                return false
                }
            }
        }
    return true
},
hasEventListener:function(w){
    return !!p[w.toLowerCase()]
    },
bind:function(w,y,x){
    var z;
    w=w.toLowerCase();
    z=p[w]||[];
    z.push({
        func:y,
        scope:x||this
        });
    p[w]=z
    },
unbind:function(w){
    w=w.toLowerCase();
    var z=p[w],x,y=arguments[1];
    if(z){
        if(y!==b){
            for(x=z.length-1;x>=0;x--){
                if(z[x].func===y){
                    z.splice(x,1);
                    break
                }
            }
            }else{
    z=[]
    }
    if(!z.length){
    delete p[w]
}
}
},
unbindAll:function(){
    var w=this;
    g.each(p,function(y,x){
        w.unbind(x)
        })
    },
destroy:function(){
    this.stop();
    this.trigger("Destroy");
    this.unbindAll()
    }
})
};

g.File=function(r,p,q){
    var o=this;
    o.id=r;
    o.name=p;
    o.size=q;
    o.loaded=0;
    o.percent=0;
    o.status=0
    };
    
g.Runtime=function(){
    this.getFeatures=function(){};
    
    this.init=function(o,p){}
};

g.QueueProgress=function(){
    var o=this;
    o.size=0;
    o.loaded=0;
    o.uploaded=0;
    o.failed=0;
    o.queued=0;
    o.percent=0;
    o.bytesPerSec=0;
    o.reset=function(){
        o.size=o.loaded=o.uploaded=o.failed=o.queued=o.percent=o.bytesPerSec=0
        }
    };

g.runtimes={};

window.plupload=g
})();
(function(){
    if(window.google&&google.gears){
        return
    }
    var a=null;
    if(typeof GearsFactory!="undefined"){
        a=new GearsFactory()
        }else{
        try{
            a=new ActiveXObject("Gears.Factory");
            if(a.getBuildInfo().indexOf("ie_mobile")!=-1){
                a.privateSetGlobalObject(this)
                }
            }catch(b){
        if((typeof navigator.mimeTypes!="undefined")&&navigator.mimeTypes["application/x-googlegears"]){
            a=document.createElement("object");
            a.style.display="none";
            a.width=0;
            a.height=0;
            a.type="application/x-googlegears";
            document.documentElement.appendChild(a)
            }
        }
}
if(!a){
    return
}
if(!window.google){
    window.google={}
}
if(!google.gears){
    google.gears={
        factory:a
    }
}
})();
(function(e,b,c,d){
    var f={};
    
    function a(h,k,m){
        var g,j,l,o;
        j=google.gears.factory.create("beta.canvas");
        try{
            j.decode(h);
            if(!k.width){
                k.width=j.width
                }
                if(!k.height){
                k.height=j.height
                }
                o=Math.min(width/j.width,height/j.height);
            if(o<1||(o===1&&m==="image/jpeg")){
                j.resize(Math.round(j.width*o),Math.round(j.height*o));
                if(k.quality){
                    return j.encode(m,{
                        quality:k.quality/100
                        })
                    }
                    return j.encode(m)
                }
            }catch(n){}
    return h
    }
    c.runtimes.Gears=c.addRuntime("gears",{
    getFeatures:function(){
        return{
            dragdrop:true,
            jpgresize:true,
            pngresize:true,
            chunks:true,
            progress:true,
            multipart:true,
            multi_selection:true
        }
    },
init:function(l,n){
    var m,h,g=false;
    if(!e.google||!google.gears){
        return n({
            success:false
        })
        }
        try{
        m=google.gears.factory.create("beta.desktop")
        }catch(k){
        return n({
            success:false
        })
        }
        function j(q){
        var p,o,r=[],s;
        for(o=0;o<q.length;o++){
            p=q[o];
            s=c.guid();
            f[s]=p.blob;
            r.push(new c.File(s,p.name,p.blob.length))
            }
            l.trigger("FilesAdded",r)
        }
        l.bind("PostInit",function(){
        var p=l.settings,o=b.getElementById(p.drop_element);
        if(o){
            c.addEvent(o,"dragover",function(q){
                m.setDropEffect(q,"copy");
                q.preventDefault()
                },l.id);
            c.addEvent(o,"drop",function(r){
                var q=m.getDragData(r,"application/x-gears-files");
                if(q){
                    j(q.files)
                    }
                    r.preventDefault()
                },l.id);
            o=0
            }
            c.addEvent(b.getElementById(p.browse_button),"click",function(u){
            var t=[],r,q,s;
            u.preventDefault();
            if(g){
                return
            }
            no_type_restriction:for(r=0;r<p.filters.length;r++){
                s=p.filters[r].extensions.split(",");
                for(q=0;q<s.length;q++){
                    if(s[q]==="*"){
                        t=[];
                        break no_type_restriction
                    }
                    t.push("."+s[q])
                    }
                }
                m.openFiles(j,{
            singleFile:!p.multi_selection,
            filter:t
        })
        },l.id)
    });
l.bind("CancelUpload",function(){
    if(h.abort){
        h.abort()
        }
    });
l.bind("UploadFile",function(u,r){
    var w=0,v,s,t=0,q=u.settings.resize,o;
    if(q&&/\.(png|jpg|jpeg)$/i.test(r.name)){
        f[r.id]=a(f[r.id],q,/\.png$/i.test(r.name)?"image/png":"image/jpeg")
        }
        r.size=f[r.id].length;
    s=u.settings.chunk_size;
    o=s>0;
    v=Math.ceil(r.size/s);
    if(!o){
        s=r.size;
        v=1
        }
        function p(){
        var C,y=u.settings.multipart,x=0,B={
            name:r.target_name||r.name
            },z=u.settings.url;
        function A(E){
            var D,J="----pluploadboundary"+c.guid(),G="--",I="\r\n",F,H;
            if(y){
                h.setRequestHeader("Content-Type","multipart/form-data; boundary="+J);
                D=google.gears.factory.create("beta.blobbuilder");
                c.each(c.extend(B,u.settings.multipart_params),function(L,K){
                    D.append(G+J+I+'Content-Disposition: form-data; name="'+K+'"'+I+I);
                    D.append(L+I)
                    });
                H=c.mimeTypes[r.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream";
                D.append(G+J+I+'Content-Disposition: form-data; name="'+u.settings.file_data_name+'"; filename="'+r.name+'"'+I+"Content-Type: "+H+I+I);
                D.append(E);
                D.append(I+G+J+G+I);
                F=D.getAsBlob();
                x=F.length-E.length;
                E=F
                }
                h.send(E)
            }
            if(r.status==c.DONE||r.status==c.FAILED||u.state==c.STOPPED){
            return
        }
        if(o){
            B.chunk=w;
            B.chunks=v
            }
            C=Math.min(s,r.size-(w*s));
        if(!y){
            z=c.buildUrl(u.settings.url,B)
            }
            h=google.gears.factory.create("beta.httprequest");
        h.open("POST",z);
        if(!y){
            h.setRequestHeader("Content-Disposition",'attachment; filename="'+r.name+'"');
            h.setRequestHeader("Content-Type","application/octet-stream")
            }
            c.each(u.settings.headers,function(E,D){
            h.setRequestHeader(D,E)
            });
        h.upload.onprogress=function(D){
            r.loaded=t+D.loaded-x;
            u.trigger("UploadProgress",r)
            };
            
        h.onreadystatechange=function(){
            var D;
            if(h.readyState==4&&u.state!==c.STOPPED){
                if(h.status==200){
                    D={
                        chunk:w,
                        chunks:v,
                        response:h.responseText,
                        status:h.status
                        };
                        
                    u.trigger("ChunkUploaded",r,D);
                    if(D.cancelled){
                        r.status=c.FAILED;
                        return
                    }
                    t+=C;
                    if(++w>=v){
                        r.status=c.DONE;
                        u.trigger("FileUploaded",r,{
                            response:h.responseText,
                            status:h.status
                            })
                        }else{
                        p()
                        }
                    }else{
                u.trigger("Error",{
                    code:c.HTTP_ERROR,
                    message:c.translate("HTTP Error."),
                    file:r,
                    chunk:w,
                    chunks:v,
                    status:h.status
                    })
                }
            }
    };

if(w<v){
    A(f[r.id].slice(w*s,C))
    }
}
p()
});
l.bind("DisableBrowse",function(o,p){
    g=p
    });
l.bind("Destroy",function(o){
    var p,q,r={
        browseButton:o.settings.browse_button,
        dropElm:o.settings.drop_element
        };
        
    for(p in r){
        q=b.getElementById(r[p]);
        if(q){
            c.removeAllEvents(q,o.id)
            }
        }
    });
n({
    success:true
})
}
})
})(window,document,plupload);
(function(g,b,d,e){
    var a={},h={};
    
    function c(o){
        var n,m=typeof o,j,l,k;
        if(o===e||o===null){
            return"null"
            }
            if(m==="string"){
            n="\bb\tt\nn\ff\rr\"\"''\\\\";
            return'"'+o.replace(/([\u0080-\uFFFF\x00-\x1f\"])/g,function(r,q){
                var p=n.indexOf(q);
                if(p+1){
                    return"\\"+n.charAt(p+1)
                    }
                    r=q.charCodeAt().toString(16);
                return"\\u"+"0000".substring(r.length)+r
                })+'"'
            }
            if(m=="object"){
            j=o.length!==e;
            n="";
            if(j){
                for(l=0;l<o.length;l++){
                    if(n){
                        n+=","
                        }
                        n+=c(o[l])
                    }
                    n="["+n+"]"
                }else{
                for(k in o){
                    if(o.hasOwnProperty(k)){
                        if(n){
                            n+=","
                            }
                            n+=c(k)+":"+c(o[k])
                        }
                    }
                n="{"+n+"}"
            }
            return n
        }
        return""+o
    }
    function f(s){
    var v=false,j=null,o=null,k,l,m,u,n,q=0;
    try{
        try{
            o=new ActiveXObject("AgControl.AgControl");
            if(o.IsVersionSupported(s)){
                v=true
                }
                o=null
            }catch(r){
            var p=navigator.plugins["Silverlight Plug-In"];
            if(p){
                k=p.description;
                if(k==="1.0.30226.2"){
                    k="2.0.30226.2"
                    }
                    l=k.split(".");
                while(l.length>3){
                    l.pop()
                    }while(l.length<4){
                    l.push(0)
                    }
                    m=s.split(".");
                while(m.length>4){
                    m.pop()
                    }
                    do{
                    u=parseInt(m[q],10);
                    n=parseInt(l[q],10);
                    q++
                }while(q<m.length&&u===n);
                if(u<=n&&!isNaN(u)){
                    v=true
                    }
                }
        }
}catch(t){
    v=false
    }
    return v
}
d.silverlight={
    trigger:function(n,k){
        var m=a[n],l,j;
        if(m){
            j=d.toArray(arguments).slice(1);
            j[0]="Silverlight:"+k;
            setTimeout(function(){
                m.trigger.apply(m,j)
                },0)
            }
        }
};

d.runtimes.Silverlight=d.addRuntime("silverlight",{
    getFeatures:function(){
        return{
            jpgresize:true,
            pngresize:true,
            chunks:true,
            progress:true,
            multipart:true,
            multi_selection:true
        }
    },
init:function(p,q){
    var o,m="",n=p.settings.filters,l,k=b.body;
    if(!f("2.0.31005.0")||(g.opera&&g.opera.buildNumber)){
        q({
            success:false
        });
        return
    }
    h[p.id]=false;
    a[p.id]=p;
    o=b.createElement("div");
    o.id=p.id+"_silverlight_container";
    d.extend(o.style,{
        position:"absolute",
        top:"0px",
        background:p.settings.shim_bgcolor||"transparent",
        zIndex:99999,
        width:"100px",
        height:"100px",
        overflow:"hidden",
        opacity:p.settings.shim_bgcolor||b.documentMode>8?"":0.01
        });
    o.className="plupload silverlight";
    if(p.settings.container){
        k=b.getElementById(p.settings.container);
        if(d.getStyle(k,"position")==="static"){
            k.style.position="relative"
            }
        }
    k.appendChild(o);
    for(l=0;l<n.length;l++){
    m+=(m!=""?"|":"")+n[l].title+" | *."+n[l].extensions.replace(/,/g,";*.")
    }
    o.innerHTML='<object id="'+p.id+'_silverlight" data="data:application/x-silverlight," type="application/x-silverlight-2" style="outline:none;" width="1024" height="1024"><param name="source" value="'+p.settings.silverlight_xap_url+'"/><param name="background" value="Transparent"/><param name="windowless" value="true"/><param name="enablehtmlaccess" value="true"/><param name="initParams" value="id='+p.id+",filter="+m+",multiselect="+p.settings.multi_selection+'"/></object>';
function j(){
    return b.getElementById(p.id+"_silverlight").content.Upload
    }
    p.bind("Silverlight:Init",function(){
    var r,s={};
    
    if(h[p.id]){
        return
    }
    h[p.id]=true;
    p.bind("Silverlight:StartSelectFiles",function(t){
        r=[]
        });
    p.bind("Silverlight:SelectFile",function(t,w,u,v){
        var x;
        x=d.guid();
        s[x]=w;
        s[w]=x;
        r.push(new d.File(x,u,v))
        });
    p.bind("Silverlight:SelectSuccessful",function(){
        if(r.length){
            p.trigger("FilesAdded",r)
            }
        });
p.bind("Silverlight:UploadChunkError",function(t,w,u,x,v){
    p.trigger("Error",{
        code:d.IO_ERROR,
        message:"IO Error.",
        details:v,
        file:t.getFile(s[w])
        })
    });
p.bind("Silverlight:UploadFileProgress",function(t,x,u,w){
    var v=t.getFile(s[x]);
    if(v.status!=d.FAILED){
        v.size=w;
        v.loaded=u;
        t.trigger("UploadProgress",v)
        }
    });
p.bind("Refresh",function(t){
    var u,v,w;
    u=b.getElementById(t.settings.browse_button);
    if(u){
        v=d.getPos(u,b.getElementById(t.settings.container));
        w=d.getSize(u);
        d.extend(b.getElementById(t.id+"_silverlight_container").style,{
            top:v.y+"px",
            left:v.x+"px",
            width:w.w+"px",
            height:w.h+"px"
            })
        }
    });
p.bind("Silverlight:UploadChunkSuccessful",function(t,w,u,z,y){
    var x,v=t.getFile(s[w]);
    x={
        chunk:u,
        chunks:z,
        response:y
    };
    
    t.trigger("ChunkUploaded",v,x);
    if(v.status!=d.FAILED&&t.state!==d.STOPPED){
        j().UploadNextChunk()
        }
        if(u==z-1){
        v.status=d.DONE;
        t.trigger("FileUploaded",v,{
            response:y
        })
        }
    });
p.bind("Silverlight:UploadSuccessful",function(t,w,u){
    var v=t.getFile(s[w]);
    v.status=d.DONE;
    t.trigger("FileUploaded",v,{
        response:u
    })
    });
p.bind("FilesRemoved",function(t,v){
    var u;
    for(u=0;u<v.length;u++){
        j().RemoveFile(s[v[u].id])
        }
    });
p.bind("UploadFile",function(t,v){
    var w=t.settings,u=w.resize||{};
    
    j().UploadFile(s[v.id],t.settings.url,c({
        name:v.target_name||v.name,
        mime:d.mimeTypes[v.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream",
        chunk_size:w.chunk_size,
        image_width:u.width,
        image_height:u.height,
        image_quality:u.quality||90,
        multipart:!!w.multipart,
        multipart_params:w.multipart_params||{},
        file_data_name:w.file_data_name,
        headers:w.headers
        }))
    });
p.bind("CancelUpload",function(){
    j().CancelUpload()
    });
p.bind("Silverlight:MouseEnter",function(t){
    var u,v;
    u=b.getElementById(p.settings.browse_button);
    v=t.settings.browse_button_hover;
    if(u&&v){
        d.addClass(u,v)
        }
    });
p.bind("Silverlight:MouseLeave",function(t){
    var u,v;
    u=b.getElementById(p.settings.browse_button);
    v=t.settings.browse_button_hover;
    if(u&&v){
        d.removeClass(u,v)
        }
    });
p.bind("Silverlight:MouseLeftButtonDown",function(t){
    var u,v;
    u=b.getElementById(p.settings.browse_button);
    v=t.settings.browse_button_active;
    if(u&&v){
        d.addClass(u,v);
        d.addEvent(b.body,"mouseup",function(){
            d.removeClass(u,v)
            })
        }
    });
p.bind("Sliverlight:StartSelectFiles",function(t){
    var u,v;
    u=b.getElementById(p.settings.browse_button);
    v=t.settings.browse_button_active;
    if(u&&v){
        d.removeClass(u,v)
        }
    });
p.bind("DisableBrowse",function(t,u){
    j().DisableBrowse(u)
    });
p.bind("Destroy",function(t){
    var u;
    d.removeAllEvents(b.body,t.id);
    delete h[t.id];
    delete a[t.id];
    u=b.getElementById(t.id+"_silverlight_container");
    if(u){
        k.removeChild(u)
        }
    });
q({
    success:true
})
})
}
})
})(window,document,plupload);
(function(f,b,d,e){
    var a={},g={};
    
    function c(){
        var h;
        try{
            h=navigator.plugins["Shockwave Flash"];
            h=h.description
            }catch(k){
            try{
                h=new ActiveXObject("ShockwaveFlash.ShockwaveFlash").GetVariable("$version")
                }catch(j){
                h="0.0"
                }
            }
        h=h.match(/\d+/g);
    return parseFloat(h[0]+"."+h[1])
    }
    d.flash={
    trigger:function(k,h,j){
        setTimeout(function(){
            var n=a[k],m,l;
            if(n){
                n.trigger("Flash:"+h,j)
                }
            },0)
    }
};

d.runtimes.Flash=d.addRuntime("flash",{
    getFeatures:function(){
        return{
            jpgresize:true,
            pngresize:true,
            maxWidth:8091,
            maxHeight:8091,
            chunks:true,
            progress:true,
            multipart:true,
            multi_selection:true
        }
    },
init:function(n,p){
    var l,m,h=0,j=b.body;
    if(c()<10){
        p({
            success:false
        });
        return
    }
    g[n.id]=false;
    a[n.id]=n;
    l=b.getElementById(n.settings.browse_button);
    m=b.createElement("div");
    m.id=n.id+"_flash_container";
    d.extend(m.style,{
        position:"absolute",
        top:"0px",
        background:n.settings.shim_bgcolor||"transparent",
        zIndex:99999,
        width:"100%",
        height:"100%"
    });
    m.className="plupload flash";
    if(n.settings.container){
        j=b.getElementById(n.settings.container);
        if(d.getStyle(j,"position")==="static"){
            j.style.position="relative"
            }
        }
    j.appendChild(m);
    (function(){
    var q,r;
    q='<object id="'+n.id+'_flash" type="application/x-shockwave-flash" data="'+n.settings.flash_swf_url+'" ';
    if(d.ua.ie){
        q+='classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" '
        }
        q+='width="100%" height="100%" style="outline:0"><param name="movie" value="'+n.settings.flash_swf_url+'" /><param name="flashvars" value="id='+escape(n.id)+'" /><param name="wmode" value="transparent" /><param name="allowscriptaccess" value="always" /></object>';
    if(d.ua.ie){
        r=b.createElement("div");
        m.appendChild(r);
        r.outerHTML=q;
        r=null
        }else{
        m.innerHTML=q
        }
    }());
function o(){
    return b.getElementById(n.id+"_flash")
    }
    function k(){
    if(h++>5000){
        p({
            success:false
        });
        return
    }
    if(g[n.id]===false){
        setTimeout(k,1)
        }
    }
k();
l=m=null;
n.bind("Destroy",function(q){
    var r;
    d.removeAllEvents(b.body,q.id);
    delete g[q.id];
    delete a[q.id];
    r=b.getElementById(q.id+"_flash_container");
    if(r){
        j.removeChild(r)
        }
    });
n.bind("Flash:Init",function(){
    var s={},r;
    try{
        o().setFileFilters(n.settings.filters,n.settings.multi_selection)
        }catch(q){
        p({
            success:false
        });
        return
    }
    if(g[n.id]){
        return
    }
    g[n.id]=true;
    n.bind("UploadFile",function(t,v){
        var w=t.settings,u=n.settings.resize||{};
        
        o().uploadFile(s[v.id],w.url,{
            name:v.target_name||v.name,
            mime:d.mimeTypes[v.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream",
            chunk_size:w.chunk_size,
            width:u.width,
            height:u.height,
            quality:u.quality,
            multipart:w.multipart,
            multipart_params:w.multipart_params||{},
            file_data_name:w.file_data_name,
            format:/\.(jpg|jpeg)$/i.test(v.name)?"jpg":"png",
            headers:w.headers,
            urlstream_upload:w.urlstream_upload
            })
        });
    n.bind("CancelUpload",function(){
        o().cancelUpload()
        });
    n.bind("Flash:UploadProcess",function(u,t){
        var v=u.getFile(s[t.id]);
        if(v.status!=d.FAILED){
            v.loaded=t.loaded;
            v.size=t.size;
            u.trigger("UploadProgress",v)
            }
        });
n.bind("Flash:UploadChunkComplete",function(t,v){
    var w,u=t.getFile(s[v.id]);
    w={
        chunk:v.chunk,
        chunks:v.chunks,
        response:v.text
        };
        
    t.trigger("ChunkUploaded",u,w);
    if(u.status!==d.FAILED&&t.state!==d.STOPPED){
        o().uploadNextChunk()
        }
        if(v.chunk==v.chunks-1){
        u.status=d.DONE;
        t.trigger("FileUploaded",u,{
            response:v.text
            })
        }
    });
n.bind("Flash:SelectFiles",function(t,w){
    var v,u,x=[],y;
    for(u=0;u<w.length;u++){
        v=w[u];
        y=d.guid();
        s[y]=v.id;
        s[v.id]=y;
        x.push(new d.File(y,v.name,v.size))
        }
        if(x.length){
        n.trigger("FilesAdded",x)
        }
    });
n.bind("Flash:SecurityError",function(t,u){
    n.trigger("Error",{
        code:d.SECURITY_ERROR,
        message:d.translate("Security error."),
        details:u.message,
        file:n.getFile(s[u.id])
        })
    });
n.bind("Flash:GenericError",function(t,u){
    n.trigger("Error",{
        code:d.GENERIC_ERROR,
        message:d.translate("Generic error."),
        details:u.message,
        file:n.getFile(s[u.id])
        })
    });
n.bind("Flash:IOError",function(t,u){
    n.trigger("Error",{
        code:d.IO_ERROR,
        message:d.translate("IO error."),
        details:u.message,
        file:n.getFile(s[u.id])
        })
    });
n.bind("Flash:ImageError",function(t,u){
    n.trigger("Error",{
        code:parseInt(u.code,10),
        message:d.translate("Image error."),
        file:n.getFile(s[u.id])
        })
    });
n.bind("Flash:StageEvent:rollOver",function(t){
    var u,v;
    u=b.getElementById(n.settings.browse_button);
    v=t.settings.browse_button_hover;
    if(u&&v){
        d.addClass(u,v)
        }
    });
n.bind("Flash:StageEvent:rollOut",function(t){
    var u,v;
    u=b.getElementById(n.settings.browse_button);
    v=t.settings.browse_button_hover;
    if(u&&v){
        d.removeClass(u,v)
        }
    });
n.bind("Flash:StageEvent:mouseDown",function(t){
    var u,v;
    u=b.getElementById(n.settings.browse_button);
    v=t.settings.browse_button_active;
    if(u&&v){
        d.addClass(u,v);
        d.addEvent(b.body,"mouseup",function(){
            d.removeClass(u,v)
            },t.id)
        }
    });
n.bind("Flash:StageEvent:mouseUp",function(t){
    var u,v;
    u=b.getElementById(n.settings.browse_button);
    v=t.settings.browse_button_active;
    if(u&&v){
        d.removeClass(u,v)
        }
    });
n.bind("Flash:ExifData",function(t,u){
    n.trigger("ExifData",n.getFile(s[u.id]),u.data)
    });
n.bind("Flash:GpsData",function(t,u){
    n.trigger("GpsData",n.getFile(s[u.id]),u.data)
    });
n.bind("QueueChanged",function(t){
    n.refresh()
    });
n.bind("FilesRemoved",function(t,v){
    var u;
    for(u=0;u<v.length;u++){
        o().removeFile(s[v[u].id])
        }
    });
n.bind("StateChanged",function(t){
    n.refresh()
    });
n.bind("Refresh",function(t){
    var u,v,w;
    o().setFileFilters(n.settings.filters,n.settings.multi_selection);
    u=b.getElementById(t.settings.browse_button);
    if(u){
        v=d.getPos(u,b.getElementById(t.settings.container));
        w=d.getSize(u);
        d.extend(b.getElementById(t.id+"_flash_container").style,{
            top:v.y+"px",
            left:v.x+"px",
            width:w.w+"px",
            height:w.h+"px"
            })
        }
    });
n.bind("DisableBrowse",function(t,u){
    o().disableBrowse(u)
    });
p({
    success:true
})
})
}
})
})(window,document,plupload);
(function(a){
    a.runtimes.BrowserPlus=a.addRuntime("browserplus",{
        getFeatures:function(){
            return{
                dragdrop:true,
                jpgresize:true,
                pngresize:true,
                chunks:true,
                progress:true,
                multipart:true,
                multi_selection:true
            }
        },
    init:function(g,j){
        var e=window.BrowserPlus,h={},d=g.settings,c=d.resize;
        function f(o){
            var n,m,k=[],l,p;
            for(m=0;m<o.length;m++){
                l=o[m];
                p=a.guid();
                h[p]=l;
                k.push(new a.File(p,l.name,l.size))
                }
                if(m){
                g.trigger("FilesAdded",k)
                }
            }
        function b(){
        var k=false;
        g.bind("PostInit",function(){
            var o,m=d.drop_element,q=g.id+"_droptarget",l=document.getElementById(m),n;
            function r(t,s){
                e.DragAndDrop.AddDropTarget({
                    id:t
                },function(u){
                    e.DragAndDrop.AttachCallbacks({
                        id:t,
                        hover:function(v){
                            if(!v&&s){
                                s()
                                }
                            },
                    drop:function(v){
                        if(s){
                            s()
                            }
                            f(v)
                        }
                    },function(){})
                })
        }
        function p(){
            document.getElementById(q).style.top="-1000px"
            }
            if(l){
            if(document.attachEvent&&(/MSIE/gi).test(navigator.userAgent)){
                o=document.createElement("div");
                o.setAttribute("id",q);
                a.extend(o.style,{
                    position:"absolute",
                    top:"-1000px",
                    background:"red",
                    filter:"alpha(opacity=0)",
                    opacity:0
                });
                document.body.appendChild(o);
                a.addEvent(l,"dragenter",function(t){
                    var s,u;
                    s=document.getElementById(m);
                    u=a.getPos(s);
                    a.extend(document.getElementById(q).style,{
                        top:u.y+"px",
                        left:u.x+"px",
                        width:s.offsetWidth+"px",
                        height:s.offsetHeight+"px"
                        })
                    });
                r(q,p)
                }else{
                r(m)
                }
            }
        a.addEvent(document.getElementById(d.browse_button),"click",function(y){
        var s=[],u,t,x=d.filters,w,v;
        y.preventDefault();
        if(k){
            return
        }
        no_type_restriction:for(u=0;u<x.length;u++){
            w=x[u].extensions.split(",");
            for(t=0;t<w.length;t++){
                if(w[t]==="*"){
                    s=[];
                    break no_type_restriction
                }
                v=a.mimeTypes[w[t]];
                if(v&&a.inArray(v,s)===-1){
                    s.push(a.mimeTypes[w[t]])
                    }
                }
            }
        e.FileBrowse.OpenBrowseDialog({
        mimeTypes:s
    },function(z){
        if(z.success){
            f(z.value)
            }
        })
    });
l=o=null
});
g.bind("CancelUpload",function(){
    e.Uploader.cancel({},function(){})
    });
g.bind("DisableBrowse",function(l,m){
    k=m
    });
g.bind("UploadFile",function(o,l){
    var n=h[l.id],t={},m=o.settings.chunk_size,p,q=[];
    function s(u,w){
        var v;
        if(l.status==a.FAILED){
            return
        }
        t.name=l.target_name||l.name;
        if(m){
            t.chunk=""+u;
            t.chunks=""+w
            }
            v=q.shift();
        e.Uploader.upload({
            url:o.settings.url,
            files:{
                file:v
            },
            cookies:document.cookies,
            postvars:a.extend(t,o.settings.multipart_params),
            progressCallback:function(z){
                var y,x=0;
                p[u]=parseInt(z.filePercent*v.size/100,10);
                for(y=0;y<p.length;y++){
                    x+=p[y]
                    }
                    l.loaded=x;
                o.trigger("UploadProgress",l)
                }
            },function(y){
            var x,z;
            if(y.success){
                x=y.value.statusCode;
                if(m){
                    o.trigger("ChunkUploaded",l,{
                        chunk:u,
                        chunks:w,
                        response:y.value.body,
                        status:x
                    })
                    }
                    if(q.length>0){
                    s(++u,w)
                    }else{
                    l.status=a.DONE;
                    o.trigger("FileUploaded",l,{
                        response:y.value.body,
                        status:x
                    });
                    if(x>=400){
                        o.trigger("Error",{
                            code:a.HTTP_ERROR,
                            message:a.translate("HTTP Error."),
                            file:l,
                            status:x
                        })
                        }
                    }
            }else{
        o.trigger("Error",{
            code:a.GENERIC_ERROR,
            message:a.translate("Generic Error."),
            file:l,
            details:y.error
            })
        }
    })
}
function r(u){
    l.size=u.size;
    if(m){
        e.FileAccess.chunk({
            file:u,
            chunkSize:m
        },function(x){
            if(x.success){
                var y=x.value,v=y.length;
                p=Array(v);
                for(var w=0;w<v;w++){
                    p[w]=0;
                    q.push(y[w])
                    }
                    s(0,v)
                }
            })
    }else{
    p=Array(1);
    q.push(u);
    s(0,1)
    }
}
if(c&&/\.(png|jpg|jpeg)$/i.test(l.name)){
    BrowserPlus.ImageAlter.transform({
        file:n,
        quality:c.quality||90,
        actions:[{
            scale:{
                maxwidth:c.width,
                maxheight:c.height
                }
            }]
    },function(u){
        if(u.success){
            r(u.value.file)
            }
        })
}else{
    r(n)
    }
});
j({
    success:true
})
}
if(e){
    e.init(function(l){
        var k=[{
            service:"Uploader",
            version:"3"
        },{
            service:"DragAndDrop",
            version:"1"
        },{
            service:"FileBrowse",
            version:"1"
        },{
            service:"FileAccess",
            version:"2"
        }];
        if(c){
            k.push({
                service:"ImageAlter",
                version:"4"
            })
            }
            if(l.success){
            e.require({
                services:k
            },function(m){
                if(m.success){
                    b()
                    }else{
                    j()
                    }
                })
        }else{
        j()
        }
    })
}else{
    j()
    }
}
})
})(plupload);
(function(h,k,j,e){
    var c={},g;
    function m(o,p){
        var n;
        if("FileReader" in h){
            n=new FileReader();
            n.readAsDataURL(o);
            n.onload=function(){
                p(n.result)
                }
            }else{
        return p(o.getAsDataURL())
        }
    }
function l(o,p){
    var n;
    if("FileReader" in h){
        n=new FileReader();
        n.readAsBinaryString(o);
        n.onload=function(){
            p(n.result)
            }
        }else{
    return p(o.getAsBinary())
    }
}
function d(r,p,n,v){
    var q,o,u,s,t=this;
    m(c[r.id],function(w){
        q=k.createElement("canvas");
        q.style.display="none";
        k.body.appendChild(q);
        o=q.getContext("2d");
        u=new Image();
        u.onerror=u.onabort=function(){
            v({
                success:false
            })
            };
            
        u.onload=function(){
            var B,x,z,y,A;
            if(!p.width){
                p.width=u.width
                }
                if(!p.height){
                p.height=u.height
                }
                s=Math.min(p.width/u.width,p.height/u.height);
            if(s<1||(s===1&&n==="image/jpeg")){
                B=Math.round(u.width*s);
                x=Math.round(u.height*s);
                q.width=B;
                q.height=x;
                o.drawImage(u,0,0,B,x);
                if(n==="image/jpeg"){
                    y=new f(atob(w.substring(w.indexOf("base64,")+7)));
                    if(y.headers&&y.headers.length){
                        A=new a();
                        if(A.init(y.get("exif")[0])){
                            A.setExif("PixelXDimension",B);
                            A.setExif("PixelYDimension",x);
                            y.set("exif",A.getBinary());
                            if(t.hasEventListener("ExifData")){
                                t.trigger("ExifData",r,A.EXIF())
                                }
                                if(t.hasEventListener("GpsData")){
                                t.trigger("GpsData",r,A.GPS())
                                }
                            }
                    }
                if(p.quality){
                try{
                    w=q.toDataURL(n,p.quality/100)
                    }catch(C){
                    w=q.toDataURL(n)
                    }
                }
        }else{
        w=q.toDataURL(n)
        }
        w=w.substring(w.indexOf("base64,")+7);
    w=atob(w);
    if(y&&y.headers&&y.headers.length){
        w=y.restore(w);
        y.purge()
        }
        q.parentNode.removeChild(q);
    v({
        success:true,
        data:w
    })
    }else{
    v({
        success:false
    })
    }
};

u.src=w
})
}
j.runtimes.Html5=j.addRuntime("html5",{
    getFeatures:function(){
        var s,o,r,q,p,n;
        o=r=p=n=false;
        if(h.XMLHttpRequest){
            s=new XMLHttpRequest();
            r=!!s.upload;
            o=!!(s.sendAsBinary||s.upload)
            }
            if(o){
            q=!!(s.sendAsBinary||(h.Uint8Array&&h.ArrayBuffer));
            p=!!(File&&(File.prototype.getAsDataURL||h.FileReader)&&q);
            n=!!(File&&(File.prototype.mozSlice||File.prototype.webkitSlice||File.prototype.slice))
            }
            g=j.ua.safari&&j.ua.windows;
        return{
            html5:o,
            dragdrop:(function(){
                var t=k.createElement("div");
                return("draggable" in t)||("ondragstart" in t&&"ondrop" in t)
                }()),
            jpgresize:p,
            pngresize:p,
            multipart:p||!!h.FileReader||!!h.FormData,
            canSendBinary:q,
            cantSendBlobInFormData:!!(j.ua.gecko&&h.FormData&&h.FileReader&&!FileReader.prototype.readAsArrayBuffer),
            progress:r,
            chunks:n,
            multi_selection:!(j.ua.safari&&j.ua.windows),
            triggerDialog:(j.ua.gecko&&h.FormData||j.ua.webkit)
            }
        },
init:function(p,r){
    var n,q;
    function o(w){
        var u,t,v=[],x,s={};
        
        for(t=0;t<w.length;t++){
            u=w[t];
            if(s[u.name]){
                continue
            }
            s[u.name]=true;
            x=j.guid();
            c[x]=u;
            v.push(new j.File(x,u.fileName||u.name,u.fileSize||u.size))
            }
            if(v.length){
            p.trigger("FilesAdded",v)
            }
        }
    n=this.getFeatures();
    if(!n.html5){
    r({
        success:false
    });
    return
}
p.bind("Init",function(w){
    var G,F,C=[],v,D,t=w.settings.filters,u,B,s=k.body,E;
    G=k.createElement("div");
    G.id=w.id+"_html5_container";
    j.extend(G.style,{
        position:"absolute",
        background:p.settings.shim_bgcolor||"transparent",
        width:"100px",
        height:"100px",
        overflow:"hidden",
        zIndex:99999,
        opacity:p.settings.shim_bgcolor?"":0
        });
    G.className="plupload html5";
    if(p.settings.container){
        s=k.getElementById(p.settings.container);
        if(j.getStyle(s,"position")==="static"){
            s.style.position="relative"
            }
        }
    s.appendChild(G);
    no_type_restriction:for(v=0;v<t.length;v++){
    u=t[v].extensions.split(/,/);
    for(D=0;D<u.length;D++){
        if(u[D]==="*"){
            C=[];
            break no_type_restriction
        }
        B=j.mimeTypes[u[D]];
        if(B&&j.inArray(B,C)===-1){
            C.push(B)
            }
        }
    }
G.innerHTML='<input id="'+p.id+'_html5"  style="font-size:999px" type="file" accept="'+C.join(",")+'" '+(p.settings.multi_selection&&p.features.multi_selection?'multiple="multiple"':"")+" />";
G.scrollTop=100;
E=k.getElementById(p.id+"_html5");
if(w.features.triggerDialog){
    j.extend(E.style,{
        position:"absolute",
        width:"100%",
        height:"100%"
    })
    }else{
    j.extend(E.style,{
        cssFloat:"right",
        styleFloat:"right"
    })
    }
    E.onchange=function(){
    o(this.files);
    this.value=""
    };
    
F=k.getElementById(w.settings.browse_button);
if(F){
    var z=w.settings.browse_button_hover,A=w.settings.browse_button_active,x=w.features.triggerDialog?F:G;
    if(z){
        j.addEvent(x,"mouseover",function(){
            j.addClass(F,z)
            },w.id);
        j.addEvent(x,"mouseout",function(){
            j.removeClass(F,z)
            },w.id)
        }
        if(A){
        j.addEvent(x,"mousedown",function(){
            j.addClass(F,A)
            },w.id);
        j.addEvent(k.body,"mouseup",function(){
            j.removeClass(F,A)
            },w.id)
        }
        if(w.features.triggerDialog){
        j.addEvent(F,"click",function(H){
            var y=k.getElementById(w.id+"_html5");
            if(y&&!y.disabled){
                y.click()
                }
                H.preventDefault()
            },w.id)
        }
    }
});
p.bind("PostInit",function(){
    var s=k.getElementById(p.settings.drop_element);
    if(s){
        if(g){
            j.addEvent(s,"dragenter",function(w){
                var v,t,u;
                v=k.getElementById(p.id+"_drop");
                if(!v){
                    v=k.createElement("input");
                    v.setAttribute("type","file");
                    v.setAttribute("id",p.id+"_drop");
                    v.setAttribute("multiple","multiple");
                    j.addEvent(v,"change",function(){
                        o(this.files);
                        j.removeEvent(v,"change",p.id);
                        v.parentNode.removeChild(v)
                        },p.id);
                    s.appendChild(v)
                    }
                    t=j.getPos(s,k.getElementById(p.settings.container));
                u=j.getSize(s);
                if(j.getStyle(s,"position")==="static"){
                    j.extend(s.style,{
                        position:"relative"
                    })
                    }
                    j.extend(v.style,{
                    position:"absolute",
                    display:"block",
                    top:0,
                    left:0,
                    width:u.w+"px",
                    height:u.h+"px",
                    opacity:0
                })
                },p.id);
            return
        }
        j.addEvent(s,"dragover",function(t){
            t.preventDefault()
            },p.id);
        j.addEvent(s,"drop",function(u){
            var t=u.dataTransfer;
            if(t&&t.files){
                o(t.files)
                }
                u.preventDefault()
            },p.id)
        }
    });
p.bind("Refresh",function(s){
    var t,u,v,x,w;
    t=k.getElementById(p.settings.browse_button);
    if(t){
        u=j.getPos(t,k.getElementById(s.settings.container));
        v=j.getSize(t);
        x=k.getElementById(p.id+"_html5_container");
        j.extend(x.style,{
            top:u.y+"px",
            left:u.x+"px",
            width:v.w+"px",
            height:v.h+"px"
            });
        if(p.features.triggerDialog){
            if(j.getStyle(t,"position")==="static"){
                j.extend(t.style,{
                    position:"relative"
                })
                }
                w=parseInt(j.getStyle(t,"z-index"),10);
            if(isNaN(w)){
                w=0
                }
                j.extend(t.style,{
                zIndex:w
            });
            j.extend(x.style,{
                zIndex:w-1
                })
            }
        }
});
p.bind("DisableBrowse",function(s,u){
    var t=k.getElementById(s.id+"_html5");
    if(t){
        t.disabled=u
        }
    });
p.bind("CancelUpload",function(){
    if(q&&q.abort){
        q.abort()
        }
    });
p.bind("UploadFile",function(s,u){
    var v=s.settings,y,t;
    function x(A,D,z){
        var B;
        if(File.prototype.slice){
            try{
                A.slice();
                return A.slice(D,z)
                }catch(C){
                return A.slice(D,z-D)
                }
            }else{
        if(B=File.prototype.webkitSlice||File.prototype.mozSlice){
            return B.call(A,D,z)
            }else{
            return null
            }
        }
}
function w(A){
    var D=0,C=0,z=("FileReader" in h)?new FileReader:null;
    function B(){
        var I,M,K,L,H,J,F,E=s.settings.url;
        function G(V){
            var T=0,N="----pluploadboundary"+j.guid(),O,P="--",U="\r\n",R="";
            q=new XMLHttpRequest;
            if(q.upload){
                q.upload.onprogress=function(W){
                    u.loaded=Math.min(u.size,C+W.loaded-T);
                    s.trigger("UploadProgress",u)
                    }
                }
            q.onreadystatechange=function(){
            var W,Y;
            if(q.readyState==4&&s.state!==j.STOPPED){
                try{
                    W=q.status
                    }catch(X){
                    W=0
                    }
                    if(W>=400){
                    s.trigger("Error",{
                        code:j.HTTP_ERROR,
                        message:j.translate("HTTP Error."),
                        file:u,
                        status:W
                    })
                    }else{
                    if(K){
                        Y={
                            chunk:D,
                            chunks:K,
                            response:q.responseText,
                            status:W
                        };
                        
                        s.trigger("ChunkUploaded",u,Y);
                        C+=J;
                        if(Y.cancelled){
                            u.status=j.FAILED;
                            return
                        }
                        u.loaded=Math.min(u.size,(D+1)*H)
                        }else{
                        u.loaded=u.size
                        }
                        s.trigger("UploadProgress",u);
                    V=I=O=R=null;
                    if(!K||++D>=K){
                        u.status=j.DONE;
                        s.trigger("FileUploaded",u,{
                            response:q.responseText,
                            status:W
                        })
                        }else{
                        B()
                        }
                    }
            }
    };

if(s.settings.multipart&&n.multipart){
    L.name=u.target_name||u.name;
    q.open("post",E,true);
    j.each(s.settings.headers,function(X,W){
        q.setRequestHeader(W,X)
        });
    if(typeof(V)!=="string"&&!!h.FormData){
        O=new FormData();
        j.each(j.extend(L,s.settings.multipart_params),function(X,W){
            O.append(W,X)
            });
        O.append(s.settings.file_data_name,V);
        q.send(O);
        return
    }
    if(typeof(V)==="string"){
        q.setRequestHeader("Content-Type","multipart/form-data; boundary="+N);
        j.each(j.extend(L,s.settings.multipart_params),function(X,W){
            R+=P+N+U+'Content-Disposition: form-data; name="'+W+'"'+U+U;
            R+=unescape(encodeURIComponent(X))+U
            });
        F=j.mimeTypes[u.name.replace(/^.+\.([^.]+)/,"$1").toLowerCase()]||"application/octet-stream";
        R+=P+N+U+'Content-Disposition: form-data; name="'+s.settings.file_data_name+'"; filename="'+unescape(encodeURIComponent(u.name))+'"'+U+"Content-Type: "+F+U+U+V+U+P+N+P+U;
        T=R.length-V.length;
        V=R;
        if(q.sendAsBinary){
            q.sendAsBinary(V)
            }else{
            if(n.canSendBinary){
                var S=new Uint8Array(V.length);
                for(var Q=0;Q<V.length;Q++){
                    S[Q]=(V.charCodeAt(Q)&255)
                    }
                    q.send(S.buffer)
                }
            }
        return
}
}
E=j.buildUrl(s.settings.url,j.extend(L,s.settings.multipart_params));
q.open("post",E,true);
q.setRequestHeader("Content-Type","application/octet-stream");
j.each(s.settings.headers,function(X,W){
    q.setRequestHeader(W,X)
    });
q.send(V)
}
if(u.status==j.DONE||u.status==j.FAILED||s.state==j.STOPPED){
    return
}
L={
    name:u.target_name||u.name
    };
    
if(v.chunk_size&&u.size>v.chunk_size&&(n.chunks||typeof(A)=="string")){
    H=v.chunk_size;
    K=Math.ceil(u.size/H);
    J=Math.min(H,u.size-(D*H));
    if(typeof(A)=="string"){
        I=A.substring(D*H,D*H+J)
        }else{
        I=x(A,D*H,D*H+J)
        }
        L.chunk=D;
    L.chunks=K
    }else{
    J=u.size;
    I=A
    }
    if(s.settings.multipart&&n.multipart&&typeof(I)!=="string"&&z&&n.cantSendBlobInFormData&&n.chunks&&s.settings.chunk_size){
    z.onload=function(){
        G(z.result)
        };
        
    z.readAsBinaryString(I)
    }else{
    G(I)
    }
}
B()
}
y=c[u.id];
if(n.jpgresize&&s.settings.resize&&/\.(png|jpg|jpeg)$/i.test(u.name)){
    d.call(s,u,s.settings.resize,/\.png$/i.test(u.name)?"image/png":"image/jpeg",function(z){
        if(z.success){
            u.size=z.data.length;
            w(z.data)
            }else{
            if(n.chunks){
                w(y)
                }else{
                l(y,w)
                }
            }
    })
}else{
    if(!n.chunks&&n.jpgresize){
        l(y,w)
        }else{
        w(y)
        }
    }
});
p.bind("Destroy",function(s){
    var u,v,t=k.body,w={
        inputContainer:s.id+"_html5_container",
        inputFile:s.id+"_html5",
        browseButton:s.settings.browse_button,
        dropElm:s.settings.drop_element
        };
        
    for(u in w){
        v=k.getElementById(w[u]);
        if(v){
            j.removeAllEvents(v,s.id)
            }
        }
    j.removeAllEvents(k.body,s.id);
    if(s.settings.container){
    t=k.getElementById(s.settings.container)
    }
    t.removeChild(k.getElementById(w.inputContainer))
    });
r({
    success:true
})
}
});
function b(){
    var q=false,o;
    function r(t,v){
        var s=q?0:-8*(v-1),w=0,u;
        for(u=0;u<v;u++){
            w|=(o.charCodeAt(t+u)<<Math.abs(s+u*8))
            }
            return w
        }
        function n(u,s,t){
        var t=arguments.length===3?t:o.length-s-1;
        o=o.substr(0,s)+u+o.substr(t+s)
        }
        function p(t,u,w){
        var x="",s=q?0:-8*(w-1),v;
        for(v=0;v<w;v++){
            x+=String.fromCharCode((u>>Math.abs(s+v*8))&255)
            }
            n(x,t,w)
        }
        return{
        II:function(s){
            if(s===e){
                return q
                }else{
                q=s
                }
            },
    init:function(s){
        q=false;
        o=s
        },
    SEGMENT:function(s,u,t){
        switch(arguments.length){
            case 1:
                return o.substr(s,o.length-s-1);
            case 2:
                return o.substr(s,u);
            case 3:
                n(t,s,u);
                break;
            default:
                return o
                }
            },
BYTE:function(s){
    return r(s,1)
    },
SHORT:function(s){
    return r(s,2)
    },
LONG:function(s,t){
    if(t===e){
        return r(s,4)
        }else{
        p(s,t,4)
        }
    },
SLONG:function(s){
    var t=r(s,4);
    return(t>2147483647?t-4294967296:t)
    },
STRING:function(s,t){
    var u="";
    for(t+=s;s<t;s++){
        u+=String.fromCharCode(r(s,1))
        }
        return u
    }
}
}
function f(s){
    var u={
        65505:{
            app:"EXIF",
            name:"APP1",
            signature:"Exif\0"
        },
        65506:{
            app:"ICC",
            name:"APP2",
            signature:"ICC_PROFILE\0"
        },
        65517:{
            app:"IPTC",
            name:"APP13",
            signature:"Photoshop 3.0\0"
        }
    },t=[],r,n,p=e,q=0,o;
r=new b();
r.init(s);
if(r.SHORT(0)!==65496){
    return
}
n=2;
o=Math.min(1048576,s.length);
while(n<=o){
    p=r.SHORT(n);
    if(p>=65488&&p<=65495){
        n+=2;
        continue
    }
    if(p===65498||p===65497){
        break
    }
    q=r.SHORT(n+2)+2;
    if(u[p]&&r.STRING(n+4,u[p].signature.length)===u[p].signature){
        t.push({
            hex:p,
            app:u[p].app.toUpperCase(),
            name:u[p].name.toUpperCase(),
            start:n,
            length:q,
            segment:r.SEGMENT(n,q)
            })
        }
        n+=q
    }
    r.init(null);
return{
    headers:t,
    restore:function(y){
        r.init(y);
        var w=new f(y);
        if(!w.headers){
            return false
            }
            for(var x=w.headers.length;x>0;x--){
            var z=w.headers[x-1];
            r.SEGMENT(z.start,z.length,"")
            }
            w.purge();
        n=r.SHORT(2)==65504?4+r.SHORT(4):2;
        for(var x=0,v=t.length;x<v;x++){
            r.SEGMENT(n,0,t[x].segment);
            n+=t[x].length
            }
            return r.SEGMENT()
        },
    get:function(x){
        var y=[];
        for(var w=0,v=t.length;w<v;w++){
            if(t[w].app===x.toUpperCase()){
                y.push(t[w].segment)
                }
            }
        return y
    },
set:function(y,x){
    var z=[];
    if(typeof(x)==="string"){
        z.push(x)
        }else{
        z=x
        }
        for(var w=ii=0,v=t.length;w<v;w++){
        if(t[w].app===y.toUpperCase()){
            t[w].segment=z[ii];
            t[w].length=z[ii].length;
            ii++
        }
        if(ii>=z.length){
            break
        }
    }
    },
purge:function(){
    t=[];
    r.init(null)
    }
}
}
function a(){
    var q,n,o={},t;
    q=new b();
    n={
        tiff:{
            274:"Orientation",
            34665:"ExifIFDPointer",
            34853:"GPSInfoIFDPointer"
        },
        exif:{
            36864:"ExifVersion",
            40961:"ColorSpace",
            40962:"PixelXDimension",
            40963:"PixelYDimension",
            36867:"DateTimeOriginal",
            33434:"ExposureTime",
            33437:"FNumber",
            34855:"ISOSpeedRatings",
            37377:"ShutterSpeedValue",
            37378:"ApertureValue",
            37383:"MeteringMode",
            37384:"LightSource",
            37385:"Flash",
            41986:"ExposureMode",
            41987:"WhiteBalance",
            41990:"SceneCaptureType",
            41988:"DigitalZoomRatio",
            41992:"Contrast",
            41993:"Saturation",
            41994:"Sharpness"
        },
        gps:{
            0:"GPSVersionID",
            1:"GPSLatitudeRef",
            2:"GPSLatitude",
            3:"GPSLongitudeRef",
            4:"GPSLongitude"
        }
    };
    
t={
    ColorSpace:{
        1:"sRGB",
        0:"Uncalibrated"
    },
    MeteringMode:{
        0:"Unknown",
        1:"Average",
        2:"CenterWeightedAverage",
        3:"Spot",
        4:"MultiSpot",
        5:"Pattern",
        6:"Partial",
        255:"Other"
    },
    LightSource:{
        1:"Daylight",
        2:"Fliorescent",
        3:"Tungsten",
        4:"Flash",
        9:"Fine weather",
        10:"Cloudy weather",
        11:"Shade",
        12:"Daylight fluorescent (D 5700 - 7100K)",
        13:"Day white fluorescent (N 4600 -5400K)",
        14:"Cool white fluorescent (W 3900 - 4500K)",
        15:"White fluorescent (WW 3200 - 3700K)",
        17:"Standard light A",
        18:"Standard light B",
        19:"Standard light C",
        20:"D55",
        21:"D65",
        22:"D75",
        23:"D50",
        24:"ISO studio tungsten",
        255:"Other"
    },
    Flash:{
        0:"Flash did not fire.",
        1:"Flash fired.",
        5:"Strobe return light not detected.",
        7:"Strobe return light detected.",
        9:"Flash fired, compulsory flash mode",
        13:"Flash fired, compulsory flash mode, return light not detected",
        15:"Flash fired, compulsory flash mode, return light detected",
        16:"Flash did not fire, compulsory flash mode",
        24:"Flash did not fire, auto mode",
        25:"Flash fired, auto mode",
        29:"Flash fired, auto mode, return light not detected",
        31:"Flash fired, auto mode, return light detected",
        32:"No flash function",
        65:"Flash fired, red-eye reduction mode",
        69:"Flash fired, red-eye reduction mode, return light not detected",
        71:"Flash fired, red-eye reduction mode, return light detected",
        73:"Flash fired, compulsory flash mode, red-eye reduction mode",
        77:"Flash fired, compulsory flash mode, red-eye reduction mode, return light not detected",
        79:"Flash fired, compulsory flash mode, red-eye reduction mode, return light detected",
        89:"Flash fired, auto mode, red-eye reduction mode",
        93:"Flash fired, auto mode, return light not detected, red-eye reduction mode",
        95:"Flash fired, auto mode, return light detected, red-eye reduction mode"
    },
    ExposureMode:{
        0:"Auto exposure",
        1:"Manual exposure",
        2:"Auto bracket"
    },
    WhiteBalance:{
        0:"Auto white balance",
        1:"Manual white balance"
    },
    SceneCaptureType:{
        0:"Standard",
        1:"Landscape",
        2:"Portrait",
        3:"Night scene"
    },
    Contrast:{
        0:"Normal",
        1:"Soft",
        2:"Hard"
    },
    Saturation:{
        0:"Normal",
        1:"Low saturation",
        2:"High saturation"
    },
    Sharpness:{
        0:"Normal",
        1:"Soft",
        2:"Hard"
    },
    GPSLatitudeRef:{
        N:"North latitude",
        S:"South latitude"
    },
    GPSLongitudeRef:{
        E:"East longitude",
        W:"West longitude"
    }
};

function p(u,C){
    var w=q.SHORT(u),z,F,G,B,A,v,x,D,E=[],y={};
    
    for(z=0;z<w;z++){
        x=v=u+12*z+2;
        G=C[q.SHORT(x)];
        if(G===e){
            continue
        }
        B=q.SHORT(x+=2);
        A=q.LONG(x+=2);
        x+=4;
        E=[];
        switch(B){
            case 1:case 7:
                if(A>4){
                x=q.LONG(x)+o.tiffHeader
                }
                for(F=0;F<A;F++){
                E[F]=q.BYTE(x+F)
                }
                break;
            case 2:
                if(A>4){
                x=q.LONG(x)+o.tiffHeader
                }
                y[G]=q.STRING(x,A-1);
                continue;
            case 3:
                if(A>2){
                x=q.LONG(x)+o.tiffHeader
                }
                for(F=0;F<A;F++){
                E[F]=q.SHORT(x+F*2)
                }
                break;
            case 4:
                if(A>1){
                x=q.LONG(x)+o.tiffHeader
                }
                for(F=0;F<A;F++){
                E[F]=q.LONG(x+F*4)
                }
                break;
            case 5:
                x=q.LONG(x)+o.tiffHeader;
                for(F=0;F<A;F++){
                E[F]=q.LONG(x+F*4)/q.LONG(x+F*4+4)
                }
                break;
            case 9:
                x=q.LONG(x)+o.tiffHeader;
                for(F=0;F<A;F++){
                E[F]=q.SLONG(x+F*4)
                }
                break;
            case 10:
                x=q.LONG(x)+o.tiffHeader;
                for(F=0;F<A;F++){
                E[F]=q.SLONG(x+F*4)/q.SLONG(x+F*4+4)
                }
                break;
            default:
                continue
                }
                D=(A==1?E[0]:E);
        if(t.hasOwnProperty(G)&&typeof D!="object"){
            y[G]=t[G][D]
            }else{
            y[G]=D
            }
        }
    return y
}
function s(){
    var v=e,u=o.tiffHeader;
    q.II(q.SHORT(u)==18761);
    if(q.SHORT(u+=2)!==42){
        return false
        }
        o.IFD0=o.tiffHeader+q.LONG(u+=2);
    v=p(o.IFD0,n.tiff);
    o.exifIFD=("ExifIFDPointer" in v?o.tiffHeader+v.ExifIFDPointer:e);
    o.gpsIFD=("GPSInfoIFDPointer" in v?o.tiffHeader+v.GPSInfoIFDPointer:e);
    return true
    }
    function r(w,u,z){
    var B,y,x,A=0;
    if(typeof(u)==="string"){
        var v=n[w.toLowerCase()];
        for(hex in v){
            if(v[hex]===u){
                u=hex;
                break
            }
        }
        }
        B=o[w.toLowerCase()+"IFD"];
y=q.SHORT(B);
for(i=0;i<y;i++){
    x=B+12*i+2;
    if(q.SHORT(x)==u){
        A=x+8;
        break
    }
}
if(!A){
    return false
    }
    q.LONG(A,z);
return true
}
return{
    init:function(u){
        o={
            tiffHeader:10
        };
        
        if(u===e||!u.length){
            return false
            }
            q.init(u);
        if(q.SHORT(0)===65505&&q.STRING(4,5).toUpperCase()==="EXIF\0"){
            return s()
            }
            return false
        },
    EXIF:function(){
        var v;
        v=p(o.exifIFD,n.exif);
        if(v.ExifVersion&&j.typeOf(v.ExifVersion)==="array"){
            for(var w=0,u="";w<v.ExifVersion.length;w++){
                u+=String.fromCharCode(v.ExifVersion[w])
                }
                v.ExifVersion=u
            }
            return v
        },
    GPS:function(){
        var u;
        u=p(o.gpsIFD,n.gps);
        if(u.GPSVersionID){
            u.GPSVersionID=u.GPSVersionID.join(".")
            }
            return u
        },
    setExif:function(u,v){
        if(u!=="PixelXDimension"&&u!=="PixelYDimension"){
            return false
            }
            return r("exif",u,v)
        },
    getBinary:function(){
        return q.SEGMENT()
        }
    }
}
})(window,document,plupload);
(function(d,a,b,c){
    function e(f){
        return a.getElementById(f)
        }
        b.runtimes.Html4=b.addRuntime("html4",{
        getFeatures:function(){
            return{
                multipart:true,
                triggerDialog:(b.ua.gecko&&d.FormData||b.ua.webkit)
                }
            },
    init:function(f,g){
        f.bind("Init",function(p){
            var j=a.body,n,h="javascript",k,x,q,z=[],r=/MSIE/.test(navigator.userAgent),t=[],m=p.settings.filters,o,l,s,w;
                no_type_restriction:for(o=0;o<m.length;o++){
                l=m[o].extensions.split(/,/);
                for(w=0;w<l.length;w++){
                    if(l[w]==="*"){
                        t=[];
                        break no_type_restriction
                    }
                    s=b.mimeTypes[l[w]];
                    if(s&&b.inArray(s,t)===-1){
                        t.push(s)
                        }
                    }
                }
            t=t.join(",");
        function v(){
            var C,A,y,B;
            q=b.guid();
            z.push(q);
            C=a.createElement("form");
            C.setAttribute("id","form_"+q);
            C.setAttribute("method","post");
            C.setAttribute("enctype","multipart/form-data");
            C.setAttribute("encoding","multipart/form-data");
            C.setAttribute("target",p.id+"_iframe");
            C.style.position="absolute";
            A=a.createElement("input");
            A.setAttribute("id","input_"+q);
            A.setAttribute("type","file");
            A.setAttribute("accept",t);
            A.setAttribute("size",1);
            B=e(p.settings.browse_button);
            if(p.features.triggerDialog&&B){
                b.addEvent(e(p.settings.browse_button),"click",function(D){
                    if(!A.disabled){
                        A.click()
                        }
                        D.preventDefault()
                    },p.id)
                }
                b.extend(A.style,{
                width:"100%",
                height:"100%",
                opacity:0,
                fontSize:"99px",
                cursor:"pointer"
            });
            b.extend(C.style,{
                overflow:"hidden"
            });
            y=p.settings.shim_bgcolor;
            if(y){
                C.style.background=y
                }
                if(r){
                b.extend(A.style,{
                    filter:"alpha(opacity=0)"
                })
                }
                b.addEvent(A,"change",function(G){
                var E=G.target,D,F=[],H;
                if(E.value){
                    e("form_"+q).style.top=-1048575+"px";
                    D=E.value.replace(/\\/g,"/");
                    D=D.substring(D.length,D.lastIndexOf("/")+1);
                    F.push(new b.File(q,D));
                    if(!p.features.triggerDialog){
                        b.removeAllEvents(C,p.id)
                        }else{
                        b.removeEvent(B,"click",p.id)
                        }
                        b.removeEvent(A,"change",p.id);
                    v();
                    if(F.length){
                        f.trigger("FilesAdded",F)
                        }
                    }
            },p.id);
    C.appendChild(A);
        j.appendChild(C);
        p.refresh()
        }
        function u(){
        var y=a.createElement("div");
        y.innerHTML='<iframe id="'+p.id+'_iframe" name="'+p.id+'_iframe" src="'+h+':&quot;&quot;" style="display:none"></iframe>';
        n=y.firstChild;
        j.appendChild(n);
        b.addEvent(n,"load",function(D){
            var E=D.target,C,A;
            if(!k){
                return
            }
            try{
                C=E.contentWindow.document||E.contentDocument||d.frames[E.id].document
                }catch(B){
                p.trigger("Error",{
                    code:b.SECURITY_ERROR,
                    message:b.translate("Security error."),
                    file:k
                });
                return
            }
            A=C.body.innerHTML;
            if(A){
                k.status=b.DONE;
                k.loaded=1025;
                k.percent=100;
                p.trigger("UploadProgress",k);
                p.trigger("FileUploaded",k,{
                    response:A
                })
                }
            },p.id)
    }
    if(p.settings.container){
    j=e(p.settings.container);
    if(b.getStyle(j,"position")==="static"){
        j.style.position="relative"
        }
    }
p.bind("UploadFile",function(y,B){
    var C,A;
    if(B.status==b.DONE||B.status==b.FAILED||y.state==b.STOPPED){
        return
    }
    C=e("form_"+B.id);
    A=e("input_"+B.id);
    A.setAttribute("name",y.settings.file_data_name);
    C.setAttribute("action",y.settings.url);
    b.each(b.extend({
        name:B.target_name||B.name
        },y.settings.multipart_params),function(F,D){
        var E=a.createElement("input");
        b.extend(E,{
            type:"hidden",
            name:D,
            value:F
        });
        C.insertBefore(E,C.firstChild)
        });
    k=B;
    e("form_"+q).style.top=-1048575+"px";
    C.submit()
    });
p.bind("FileUploaded",function(y){
    y.refresh()
    });
p.bind("StateChanged",function(y){
    if(y.state==b.STARTED){
        u()
        }else{
        if(y.state==b.STOPPED){
            d.setTimeout(function(){
                b.removeEvent(n,"load",y.id);
                if(n.parentNode){
                    n.parentNode.removeChild(n)
                    }
                },0)
        }
    }
b.each(y.files,function(B,A){
    if(B.status===b.DONE||B.status===b.FAILED){
        var C=e("form_"+B.id);
        if(C){
            C.parentNode.removeChild(C)
            }
        }
})
});
p.bind("Refresh",function(A){
    var G,B,C,D,y,H,I,F,E;
    G=e(A.settings.browse_button);
    if(G){
        y=b.getPos(G,e(A.settings.container));
        H=b.getSize(G);
        I=e("form_"+q);
        F=e("input_"+q);
        b.extend(I.style,{
            top:y.y+"px",
            left:y.x+"px",
            width:H.w+"px",
            height:H.h+"px"
            });
        if(A.features.triggerDialog){
            if(b.getStyle(G,"position")==="static"){
                b.extend(G.style,{
                    position:"relative"
                })
                }
                E=parseInt(G.style.zIndex,10);
            if(isNaN(E)){
                E=0
                }
                b.extend(G.style,{
                zIndex:E
            });
            b.extend(I.style,{
                zIndex:E-1
                })
            }
            C=A.settings.browse_button_hover;
        D=A.settings.browse_button_active;
        B=A.features.triggerDialog?G:I;
        if(C){
            b.addEvent(B,"mouseover",function(){
                b.addClass(G,C)
                },A.id);
            b.addEvent(B,"mouseout",function(){
                b.removeClass(G,C)
                },A.id)
            }
            if(D){
            b.addEvent(B,"mousedown",function(){
                b.addClass(G,D)
                },A.id);
            b.addEvent(a.body,"mouseup",function(){
                b.removeClass(G,D)
                },A.id)
            }
        }
});
f.bind("FilesRemoved",function(y,B){
    var A,C;
    for(A=0;A<B.length;A++){
        C=e("form_"+B[A].id);
        if(C){
            C.parentNode.removeChild(C)
            }
        }
    });
f.bind("DisableBrowse",function(y,B){
    var A=a.getElementById("input_"+q);
    if(A){
        A.disabled=B
        }
    });
f.bind("Destroy",function(y){
    var A,B,C,D={
        inputContainer:"form_"+q,
        inputFile:"input_"+q,
        browseButton:y.settings.browse_button
        };
        
    for(A in D){
        B=e(D[A]);
        if(B){
            b.removeAllEvents(B,y.id)
            }
        }
    b.removeAllEvents(a.body,y.id);
    b.each(z,function(F,E){
    C=e("form_"+F);
    if(C){
        j.removeChild(C)
        }
    })
});
v()
});
g({
    success:true
})
}
})
})(window,document,plupload);